뷰 Merging 쿼리 변환 Predicate 정보를 보면 필터 방식으로 수행된 서브쿼리의 조건절이 바인드 변수로 처리된 부분("DEPTNO" = :B1)이 눈에 띄는데, 이를 통해 옵티마이저가 서브쿼리를 별도의 서브플랜으로 최적화한다는 사실을 알 수 있다. 하지만 dept 테이블의 deptno 컬럼에 PK/Unique 제약이나 Unique 인덱스가 없으면 옵티마이저는 emp와 dept 간의 관계를 알 수 없고, 결과를... 뷰 Merging조인 조건 PushdownUnnesting조건절 Pushing조건절 Pullup서브쿼리조건절 이행Unnesting
쿼리 변환 Predicate 정보를 보면 필터 방식으로 수행된 서브쿼리의 조건절이 바인드 변수로 처리된 부분("DEPTNO" = :B1)이 눈에 띄는데, 이를 통해 옵티마이저가 서브쿼리를 별도의 서브플랜으로 최적화한다는 사실을 알 수 있다. 하지만 dept 테이블의 deptno 컬럼에 PK/Unique 제약이나 Unique 인덱스가 없으면 옵티마이저는 emp와 dept 간의 관계를 알 수 없고, 결과를... 뷰 Merging조인 조건 PushdownUnnesting조건절 Pushing조건절 Pullup서브쿼리조건절 이행Unnesting